home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Satanic Rites 1
/
Satanic Rites - Issue 1 (1992-05-17)(Destiny).adf
/
T
/
Checksum
< prev
next >
Wrap
Text File
|
2021-10-01
|
2KB
|
112 lines
{3Cyclic redundancy checksum
{5A lame routine by Terminator/Destiny
{6Hullo, {7this routine will stop people
changing the texts in your creations.
Its really simple. Unfortunatly, It
will only checksum data and not code.
I.e.
{4Dc.b "Greetings to the triple headed
frog from saturn"
{1can be checksumed but ...
{4Loop: Bra.s Loop(Or any other code)
{1can't be checksummed. This is coz the
code could load at a different address
i.e. Say when you assembled it, the
routine resided at 20000 a disassembly
of $20000 would reveal ...
{420000 Bra $20000
{1Now, If the executable loaded at
$40000, Then the code would read
{440000 Bra $40000
{1If you cant understand that then you
must be dull as fuck. But never mind.
{4Okay, all you have to do is...
Section Checksum,code_C
Jsr Checksum(pc)
Cmp.l #$00000000,d1
Beq.s Checksumright
Jmp $fc00d0
{1Or whatever you wanna do when the text
has been changed. (I like to display a
nasty message first personally!)
{5Checksumright:
...
Your code goes here
...
Rts
{5Checksum
Lea Datastart(pc),a0
Move.l #Dataend-Datastart,d0
{5Loop:
{4 Add.l (a0)+,d1
dbra d0,loop
Rts
{5Datastart:
Screen dc.l 0 Logo incbin
"Df0:Graphics/logo.raw"
{5Music incbin
"DF0:music/mod.cheesy module"
{5scrolltext dc.b "Hi welcome to this
checksummer!"
even
{4Dataend:
{5Thats it!
Assemble it.
}1(DONT RUN IT! - IT WILL CRASH!)
{3Click on Debug (Or Right amiga & D)
trace your way through the prog using
Ctrl and T Note what D1 contains after
the Jsr Checksum Write it down. Now
press CRTL & C to go back to the
{4Devpac {3screen Change the cmp.l
#$00000000,d1 to whatever the number
you wrote down was! Reassemble.
Debug again. Trace your way through a
few lines to ensure that you have put
the right number in the right place!
If all goes well, the texts,logos &
music and anything else you put in
your data division will be
unchangable! (Without potch anyway)
Once assembled to an executable,
{4Lamer's{3 will have a hard time changing
anything. And If someone is clever
enough to disassemble the whole
program, change the checksum and the
texts, I think they would also be
clever enough to write the routines in
your program anyway.
{2I.e. Only incompetant lamers with
file editors will try to change texts.
{6Terminator